<?php namespace Zmsun\Http\Header;class WWWAuthenticate implements IMultipleHeader{public static function fromString($headerLine){$header=new static();list($name,$value)=GenericHeader::splitHeaderLine($headerLine);if(strtolower($name)!=='www-authenticate'){throw new \InvalidArgumentException('Invalid header line for WWW-Authenticate string: "'.$name.'"');}$header->value=$value;return$header;}public function getFieldName(){return'WWW-Authenticate';}public function getFieldValue(){return$this->value;}public function toString(){return'WWW-Authenticate: '.$this->getFieldValue();}public function toStringMultipleHeaders(array$headers){$strings=array($this->toString());foreach($headers as$header){if(!$header instanceof WWWAuthenticate){throw new \RuntimeException('The WWWAuthenticate multiple header implementation can only accept an array of WWWAuthenticate headers');}$strings[]=$header->toString();}return implode("\r\n",$strings);}}